package condicao

class CondicaoDeCompra {

    Long version;
    //CONDICAO COMPRA
    Integer tcodigo_pk; //= tcodigo_fpk na tabela-filha
    String tdescricao;
    String tforma_parcelamento_chk;
    String tpossui_entrada_chk;
    Integer tgrupo_comissao_fk;
    //@OneToMany(cascade = CascadeType.ALL, mappedBy = "condicaoCompra")
    //private List<CondicaoCompraParcela> condicaoCompraParcelaList;

    //CONDICAO COMPRA PARCELA
    //private Integer tcodigo_fpk;  //= tcodigo_pk na tabela-mãe
    Integer tparcela_pk;
    String tnum_dias_vencimento;   //vai virar Integer
    String tpercentual_parcela;     //vai virar BigDecimal
    String tdia_vencimento1;       //vai virar Integer
    String tdia_vencimento2;       //vai virar Integer
    //@JoinColumn(name = "tcodigo_fpk", referencedColumnName = "tcodigo_pk", nullable = false, insertable = false, updatable = false)
    //@ManyToOne(optional = false)
    //private CondicaoCompra condicaoCompra;
    
    static constraints = {
        tdescricao(blank:false, maxSize:30)
        tforma_parcelamento_chk(blank:false, maxSize:1, inList:['A', 'B', 'C'])
        tpossui_entrada_chk(blank:false, maxSize:1, inList:['S', 'N'])
        tgrupo_comissao_fk(blank:false)

        tparcela_pk(nullable:true)
        tnum_dias_vencimento(blank:false)
        tpercentual_parcela(blank:false)
        tdia_vencimento1(nullable:true)
        tdia_vencimento2(nullable:true)
    }
}
